package com.gopay.common.domain.poundage;

import java.io.Serializable;
import java.math.BigDecimal;

import com.gopay.common.constants.trans.OrderFeePayer;
import com.gopay.common.domain.BaseEntity;

/**
 * 手续费服务响应类
 * 
 * @PoundageRes.java
 * @author yaobo
 * @2013-2-1 下午05:23:01 www.gopay.com.cn Inc.All rights reserved.
 */
public class PoundageRes extends BaseEntity {

    /**
     * 
     */
    private static final long serialVersionUID = 1545372894788007209L;

    /**
     * 订单总金额
     */
    private BigDecimal totalAmt;

    /**
     * 订单总手续费
     */
    private BigDecimal totalFeeAmt;

    /**
     * 订单成交金额
     */
    private BigDecimal orderDealAmt;

    /**
     * 订单实收手续费
     */
    private BigDecimal orderRealFeeAmt;

    /**
     * 结算金额    请勿随便塞值
     * 如果是付款方承担手续费 并且 订单与银行有关
     * 
     *	 结算统计金额： 网银，快捷承担方为付款方：(主要是充值和网关支付) 结算统计金额=商户交易金额+手续费
     *	不涉及银行结算:结算统计金额=商户交易金额
     *	付款类：（付款到银行和提现属于此类）  结算统计金额=商户交易金额
     */
    private BigDecimal settleAmt;
    
    
    /**
     * 手续费承担方
     */
    private OrderFeePayer orderFeePayer;

    /**
     * 跨境加的邮电费,add by qld
     */
    private BigDecimal postAmt;


    /**
     * add by qld 返回外卡支付定额收费
     */
    private BigDecimal wkQuotaFeeAmt;

    /**
     * add by qld 返回外卡支付拒付申诉费
     */
    private BigDecimal wkComplaintFeeAmt;



    public OrderFeePayer getOrderFeePayer() {
        return orderFeePayer;
    }

    public void setOrderFeePayer(OrderFeePayer orderFeePayer) {
        this.orderFeePayer = orderFeePayer;
    }

    public BigDecimal getTotalAmt() {
        return totalAmt;
    }

    public void setTotalAmt(BigDecimal totalAmt) {
        this.totalAmt = totalAmt;
    }

    public BigDecimal getTotalFeeAmt() {
        return totalFeeAmt;
    }

    public void setTotalFeeAmt(BigDecimal totalFeeAmt) {
        this.totalFeeAmt = totalFeeAmt;
    }

    public BigDecimal getOrderDealAmt() {
        return orderDealAmt;
    }

    public void setOrderDealAmt(BigDecimal orderDealAmt) {
        this.orderDealAmt = orderDealAmt;
    }

    public BigDecimal getOrderRealFeeAmt() {
        return orderRealFeeAmt;
    }

    public void setOrderRealFeeAmt(BigDecimal orderRealFeeAmt) {
        this.orderRealFeeAmt = orderRealFeeAmt;
    }
    
    public BigDecimal getSettleAmt() {
		return settleAmt;
	}


	public void setSettleAmt(BigDecimal settleAmt) {
		this.settleAmt = settleAmt;
	}


    public BigDecimal getPostAmt() {
        return postAmt;
    }

    public void setPostAmt(BigDecimal postAmt) {
        this.postAmt = postAmt;
    }

    public BigDecimal getWkQuotaFeeAmt() {
        return wkQuotaFeeAmt;
    }

    public void setWkQuotaFeeAmt(BigDecimal wkQuotaFeeAmt) {
        this.wkQuotaFeeAmt = wkQuotaFeeAmt;
    }

    public BigDecimal getWkComplaintFeeAmt() {
        return wkComplaintFeeAmt;
    }

    public void setWkComplaintFeeAmt(BigDecimal wkComplaintFeeAmt) {
        this.wkComplaintFeeAmt = wkComplaintFeeAmt;
    }

	@Override
	public String toString() {
		return "PoundageRes [totalAmt=" + totalAmt + ", totalFeeAmt=" + totalFeeAmt + ", orderDealAmt=" + orderDealAmt
				+ ", orderRealFeeAmt=" + orderRealFeeAmt + ", settleAmt=" + settleAmt + ", orderFeePayer="
				+ orderFeePayer + ", postAmt=" + postAmt + ", wkQuotaFeeAmt=" + wkQuotaFeeAmt + ", wkComplaintFeeAmt="
				+ wkComplaintFeeAmt + "]";
	}


}
